package com.csx.micrometer.invoke.custom;

import com.csx.micrometer.invoke.context.MicrometerRequest;
import com.csx.micrometer.invoke.context.MicrometerResponse;
import io.micrometer.core.instrument.Tags;
import org.springframework.core.Ordered;

/**
 * 自定义标签
 * @author cuisongxu
 * @date 2022/12/1 14:23
 */
public interface TagsCustom extends Ordered {

    /**
     *
     * 自定义标签 - 通过从请求/响应中获取数据自定义标签
     * @param request 请求对象
     * @param response 响应对象
     * @param tags 标签组对象
     * @return 自定义的Tags
     */
    Tags customTags(MicrometerRequest request, MicrometerResponse response, Tags tags);
}
